Orchestration Mode
概要:
AIエージェントがタスクを分解して,補助役の別のAIエージェントに仕事を依頼しながら仕事を進めるモード 複雑な仕事をAIエージェントに依頼するときに生じる(a)作業過程の情報に惑わされて本来の目的を見失ったり,(b)入力文字数(∝金額)が膨れ上がったりという問題を緩和できる.
原理:
このモードのエージェントは,メインタスクの解決に向けて次に行うべきことをサブタスクに切り分けて,別のセッションに処理させる(≒別の子エージェントに依頼する)ように動作する.
これにより全体計画用と個別作業用の情報が分離されて,複雑なタスク中の余分なコンテクストの蓄積を防げる.
専門用語による圧縮説明:
具体的には,メインタスク遂行役のエージェントに(1)タスクをサブタスクに分解して,(2)サブタスクごとにセッションを分離させることで,実質的に「異なるコンテクストとモードを与えられた多数のエージェントを協調させて問題解決に取り組ませる」管理職的な役割を実現する.
利点
複雑なタスクにおいて不要なコンテクスト情報が累積しない
効果
長い作業を経ても当初に与えた目的を見失いにくくなる
不要な作業ログが累積しないため,API費用を抑えられる
理由
行うべきことが多岐にわたる複雑なタスクにおいてメインタスクが作業を分解することで,実行役のサブタスクはひとつの目的に集中して作業できる
環境に没入して試行錯誤する過程の情報はサブタスクに閉じるため,統括役のメインタスクは行動・結果に直接関係する環境情報のみに集中して思考・判断・計画できる
イメージ図:リファクタリングの分業
code:mermaid
sequenceDiagram
participant Parent as メイン<br>統括役
participant ChildA as サブA<br>問題抽出
participant ChildB as サブB<br>関数分割
participant ChildC as サブC<br>テスト
participant ChildD as サブD<br>リファクタリング
rect rgb(224,242,224)
Parent->>ChildA: 「問題点をリストアップして」
activate ChildA
ChildA-->>Parent: 問題点リスト
deactivate ChildA
end
rect rgb(217,229,255)
Parent->>ChildB: 「優先問題だけ対象に関数分割案を作成して」
activate ChildB
ChildB-->>Parent: 分割案
deactivate ChildB
Parent->>ChildB: 「具体例を追加してブラッシュアップして」
activate ChildB
ChildB-->>Parent: ブラッシュアップ版
deactivate ChildB
end
rect rgb(255,236,217)
Parent->>ChildC: 「ブラッシュアップ版に基づいてテストコードを書いて」
activate ChildC
ChildC-->>Parent: テストコード
deactivate ChildC
end
rect rgb(235,217,255)
Parent->>ChildD: 「テストに合格するリファクタリング版を実装して」
activate ChildD
ChildD-->>Parent: リファクタリング版
deactivate ChildD
end
rect rgb(240,219,219)
Parent-->>Parent: 成果物を統合・確認してタスク完了
end
ーーー
2025/4/27 17:00